﻿using System.Collections.Generic;
using yiCommerce.Core;
using yiCommerce.Core.Domain.Categorys;

namespace yiCommerce.Service.Categorys
{
    public interface ICategoryService
    {
        void DeleteCategory(Category category);

        IPagedList<Category> GetAllCategories(string categoryName = "", int pageIndex = 0, int pageSize = int.MaxValue);

        IList<Category> GetAllCategoriesByParentCategoryId(int parentCategoryId);

        Category GetCategoryById(int categoryId);
        void InsertCategory(Category category);

        void UpdateCategory(Category category);
        void DeleteProductCategory(ProductCategory productCategory);

        IPagedList<ProductCategory> GetProductCategoriesByCategoryId(int categoryId, int pageIndex, int pageSize);

        IList<ProductCategory> GetProductCategoriesByProductId(int productId);

        ProductCategory GetProductCategoryById(int productCategoryId);
        void InsertProductCategory(ProductCategory productCategory);

        void UpdateProductCategory(ProductCategory productCategory);
    }

   
}